package com.tlvip.leetcode;

import java.util.Arrays;

/**
 * <p>description：</p>
 * <p>copyright： copyright(C)2016-2099</p>
 * <p>Life is short,we need passion</p>
 * <p>Summary： 寻找数组的中心下标
 * 数组中的一个下标，数组的左边和与右边和相等
 * 找到这样的元素下标，不存在返回-1，
 * 如果数组中存在多个中心下标，返回最靠近左边的那一个。
 * 中心下标可能出现在数组的两端
 * </p>
 * <p>instructions： </p>
 * Date 2022/5/9</p>
 * Author mac
 *
 * @version 1.0
 */
public class ArrayCenterIndex {
    public static void main(String[] args) {
        System.out.println(pivotIndex(new int[]{1, 7, 3, 6, 5, 6}));
    }

    public static int pivotIndex(int[] nums) {
        // 1. 求整个数组的和
        int sum = Arrays.stream(nums).sum();
        int total = 0;
        for (int i = 0; i < nums.length; i++) {
            total = total + nums[i];
            if (total == sum) {
                return i;
            }
            sum = sum - nums[i];
        }
        return -1;
    }


}
